package com.lzp.appexp;

/**
 * @describe:
 * @Author: lixiaopeng
 * @Date: 12/18/20
 */
class TTTTTTTest {
    public static void main(String[] args) {

    }
}



/*
interface EventListener{
    */
/**
     * 向下分发
     *//*

    void dispatchEvent();

    */
/**
     * 向上传递
     * @param result 根据你的需要修改
     *//*

    void reportEvent(Object result);

    */
/**
     * 获取上级
     * @return
     *//*

    EventListener getLastLevel();

    */
/**
     * 获取下级
     * @return
     *//*

    EventListener getNextLevel();
}

abstract class BaseUser implements EventListener{
    @Override
    public void dispatchEvent() {
        if (getNextLevel()==null){
            return;
        }
        getNextLevel().dispatchEvent();
    }

    @Override
    public void reportEvent(Object result) {
        if (getLastLevel()==null){
            return;
        }
        getLastLevel().reportEvent(result);
    }
}
class 老师 extends BaseUser implements  EventListener{

    @Override
    public EventListener getLastLevel() {
        return new 校长();
    }

    @Override
    public EventListener getNextLevel() {
        return new 学生();
    }
}

*/
